package com.ssy.lingxi.member.merchant.service.web;

import com.ssy.lingxi.common.response.PageData;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.member.merchant.model.vo.basic.request.MemberIdAndRoleIdListVO;
import com.ssy.lingxi.member.merchant.model.vo.basic.request.SubMemberIdRoleIdVO;
import com.ssy.lingxi.member.merchant.model.vo.maintenance.response.MemberAssignedPageQueryVO;
import com.ssy.lingxi.member.merchant.model.vo.maintenance.response.MemberAssignedSearchConditionVO;
import com.ssy.lingxi.member.merchant.model.vo.validate.request.MemberAbilityAssignedMemberQueryVO;
import org.springframework.http.HttpHeaders;

import java.util.List;

/**
 * 会员能力-会员管理-待分配会员相关接口
 *
 * @author whm
 * @version 2.0.0
 * @date 2022-03-29
 **/
public interface IMemberAbilityAssignedService {
    /**
     * 获取分页查询会员列表页面中各个查询条件下拉选择框的内容
     *
     * @param headers HttpHeaders信息
     * @return 操作结果
     */
    Wrapper<MemberAssignedSearchConditionVO> getPageCondition(HttpHeaders headers);

    /**
     * 分页、模糊查询会员
     *
     * @param headers HttpHeaders信息
     * @param queryVO 接口参数
     * @return 操作结果
     */
    Wrapper<PageData<MemberAssignedPageQueryVO>> pageMembers(HttpHeaders headers, MemberAbilityAssignedMemberQueryVO queryVO);

    /**
     * 领取会员
     *
     * @param headers       Http头部信息
     * @param subMemberList 接口参数
     * @return 操作结果
     */
    Wrapper<Void> bindOperator(HttpHeaders headers, List<SubMemberIdRoleIdVO> subMemberList);
}
